home *** CD-ROM | disk | FTP | other *** search
/ SGI Freeware 2001 May / SGI Freeware 2001 May - Disc 3.iso / dist / fw_openssl.idb / usr / freeware / catman / p_man / cat3 / dh.Z / dh
Text File  |  2001-01-10  |  3KB  |  133 lines

  1.  
  2.  
  3.  
  4.      ddddhhhh((((3333))))            22227777////JJJJaaaannnn////2222000000000000    ((((0000....9999....6666))))             ddddhhhh((((3333))))
  5.  
  6.  
  7.  
  8.      NNNNAAAAMMMMEEEE
  9.       dh - Diffie-Hellman key agreement
  10.  
  11.      SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  12.        #include <openssl/dh.h>
  13.  
  14.        DH *      DH_new(void);
  15.        void      DH_free(DH *dh);
  16.  
  17.        int      DH_size(DH *dh);
  18.  
  19.        DH *      DH_generate_parameters(int prime_len,    int generator,
  20.               void (*callback)(int,    int, void *), void *cb_arg);
  21.        int      DH_check(DH *dh, int *codes);
  22.  
  23.        int      DH_generate_key(DH *dh);
  24.        int      DH_compute_key(unsigned char *key, BIGNUM *pub_key, DH *dh);
  25.  
  26.        void    DH_set_default_method(DH_METHOD    *meth);
  27.        DH_METHOD *DH_get_default_method(void);
  28.        DH_METHOD *DH_set_method(DH *dh, DH_METHOD *meth);
  29.        DH *DH_new_method(DH_METHOD *meth);
  30.        DH_METHOD *DH_OpenSSL(void);
  31.  
  32.        int DH_get_ex_new_index(long    argl, char *argp, int (*new_func)(),
  33.                int (*dup_func)(), void (*free_func)());
  34.        int DH_set_ex_data(DH *d, int idx, char *arg);
  35.        char    *DH_get_ex_data(DH *d, int idx);
  36.  
  37.        DH *      d2i_DHparams(DH **a, unsigned    char **pp, long    length);
  38.        int      i2d_DHparams(DH *a, unsigned char **pp);
  39.  
  40.        int      DHparams_print_fp(FILE *fp, DH *x);
  41.        int      DHparams_print(BIO *bp, DH *x);
  42.  
  43.  
  44.      DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  45.       These    functions implement the    Diffie-Hellman key agreement
  46.       protocol.  The generation of shared DH parameters is
  47.       described in DH_generate_parameters(3); DH_generate_key(3)
  48.       describes how    to perform a key agreement.
  49.  
  50.       The DDDDHHHH structure consists of several BIGNUM components.
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.      Page 1                        (printed 11/10/00)
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.      ddddhhhh((((3333))))            22227777////JJJJaaaannnn////2222000000000000    ((((0000....9999....6666))))             ddddhhhh((((3333))))
  71.  
  72.  
  73.  
  74.        struct
  75.           {
  76.           BIGNUM *p;          // prime number (shared)
  77.           BIGNUM *g;          // generator of Z_p (shared)
  78.           BIGNUM *priv_key;      // private DH    value x
  79.           BIGNUM *pub_key;      // public DH value g^x
  80.           // ...
  81.           };
  82.        DH
  83.  
  84.  
  85.      SSSSEEEEEEEE AAAALLLLSSSSOOOO
  86.       dhparam(1), bn(3), dsa(3), err(3), rand(3), rsa(3),
  87.       DH_set_method(3), DH_new(3), DH_get_ex_new_index(3),
  88.       DH_generate_parameters(3), DH_compute_key(3),
  89.       d2i_DHparams(3), RSA_print(3)
  90.  
  91.  
  92.  
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.      Page 2                        (printed 11/10/00)
  130.  
  131.  
  132.  
  133.